package ch.prokopovi.ui.main.api;

import java.util.List;

import android.database.Cursor;
import android.location.Location;
import ch.prokopovi.api.struct.BestRatePlace;
import ch.prokopovi.struct.Master.CurrencyCode;
import ch.prokopovi.struct.Master.OperationType;
import ch.prokopovi.struct.Master.Region;

import com.google.android.apps.analytics.GoogleAnalyticsTracker;

public interface Updater {

	void setRegion(Region region);

	Region getRegion();

	void read(boolean instantly);

	void addUpdateListener(UpdateListener updateListener);

	void removeUpdateListener(UpdateListener updateListener);

	Location getLocation();

	Cursor getData(OperationType operationType, CurrencyCode currencyCode,
			int limit);

	List<BestRatePlace> getData();

	GoogleAnalyticsTracker getTracker();

	void shiftFragments();
}
